voir aussi dosemulator
DOSBox est un excellent émulateur DOS tournant sous Windows, BeOS, Linux, MacOS X, etc. Il utilise la bibliothèque SDL ce qui la rend très facile à porter. Il émule très bien de vieux processeurs (286/386), Le système de fichiers, XMS, EMS et même une carte Sound Blaster.
Mais à quoi ça sert ? Si vous êtes motivé, on peut y faire tourner Windows 3.1, personnellement, ça me permet de rejouer à mes premiers jeux qui n'avaient besoin que de dos pour tourner.
En installant le paquet dosbox.
Tapez ceci dans un terminal, pour créer le fichier de configuration:
dosbox -c 'config -writeconf dosbox.conf'
Quittez dosbox en tapant:
exit
Il peut être intéressant d'ajouter un dossier pour contenir ce que vous voulez mettre dans le disque dur C de Dosbox. Pour cela on va créer un répertoire, tapez dans le terminal:
mkdir dosbox
Éditez avec votre éditeur préféré le fichier « dosbox.conf » qui se trouve dans votre Dossier Personnel.
Ce fichier permet de configurer beaucoup de choses, la configuration dépendra beaucoup de ce que vous lancez. Par exemple une vieille application aura besoin d'un nombre de cycles très faible. C'est ici que vous indiquerez quel dossier est le lecteur C de DOS, ainsi que le lecteur CD que vous voulez utiliser.
ajouté à la toute fin du fichier:
mount c ~/dosbox mount d /media/cdrom -t cdrom c:
Ainsi lorsque dosbox démarrera, il prendra en compte le dossier dosbox de votre dossier personnel comme lecteur C:\ et démarrera directement dessus.
La commande pour monter un disque dur est très simple. Sous DOSBox:
mount Lettre_Disque Chemin_dans_linux
Par exemple :
mount E /home/moua/jeux/dosbox/
La commande pour monter une disquette, c'est comme pour un disque dur mais avec l'option « -t floppy ». Sous DOSBox :
mount Lettre_Disquette Chemin_dans_linux -t floppy
Par exemple :
mount A /home/moua/jeux/dosbox/disquette -t floppy
Il est à noter que DOS n'acceptait que les lettres A et B comme lecteur de disquettes.
Alors là ça se complique un peu, dosbox permet d'émuler plusieurs sortes de CD-ROM :
mount D D:\ -t cdrom
mount D D:\ -t cdrom -usecd 0
mount D D:\ -t cdrom -usecd 0 -ioctl
mount D D:\ -t cdrom -usecd 0 -aspi
le nombre 0 après -usecd correspond au nombre renvoyé par
mount -cd
imgmount Lettre_CD "/home/moua/jeux/dosbox/cd/game.iso" -t iso
Il existe plusieurs façons de lancer un programme avec dosbox :
dosbox /chemin/repertoire/fichier.exe
ou bien
moua@PC:~$ dosbox
puis sous dosbox :
c: cd monrep fichier.exe
On remarque ici qu'il y a un problème, suivant ce qu'on lance, on peut avoir besoin d'un fichier dosbox.conf différent. Il est néanmoins possible de définir un fichier de config au lancement de dosbox :
dosbox -conf /chemin/vers/dosbox.conf
Par exemple :
dosbox -conf /home/moua/dosbox/mon_jeu/dosbox.conf
Il est un peu lourd de lancer DOSBox puis son jeu, pourquoi ne pas lancer le jeu directement dans DOSBox ?
dosbox -c /home/moua/dosbox/mon_jeu/mon_jeu.exe -c exit
On remarque ici que le fichier de conf lancé est celui par défaut, on peut bien entendu choisir celui qu'on veut :
dosbox -conf /home/moua/dosbox/mon_jeu/dosbox.conf -c /home/moua/dosbox/mon_jeu/mon_jeu.exe -c exit
Il est même possible de tout inclure dans le « dosbox.conf » et donc de ne plus avoir qu'à lancer dosbox avec le bon « dosbox.conf ».
... [autoexec] # Lines in this section will be run at startup. mount c /home/moua/dosbox mount d /media/cdrom c: cd mon_jeu mon_jeu.exe exit
La première question qu'on se pose maintenant est : est-ce que mon jeu marche? Pour le savoir, allez voir cette page.
Il est à noter que la version incluse dans Dapper est la 0.63.
Et Que dans feisty c'est la 0.70 si vous activez les backports (dans les mises à jours). Sous gutsy, c'est la 0.71.
Il existe d'autre part des GUI pour faciliter la configuration de DOSBox.
Le plus simple pour mettre clavier en AZERTY est de modifier le fichier dosbox.conf et de changer la disposition de clavier. Vers la fin du fichier:
[dos] # xms -- Enable XMS support. # ems -- Enable EMS support. # umb -- Enable UMB support. # keyboardlayout -- Language code of the keyboard layout (or none). xms=true ems=true umb=true keyboardlayout=fr
(On peut aussi taper keyb fr en tant que commande, tout simplement)
On ne peut pas taper les caractères « \ » ou « : » sur un clavier autre qu'anglais, voici quelques solutions: (Corrigé sur les dernières versions : 0.71 ok)
Modifier la définition du clavier sous linux avant de lancer DOSBox :
setxkbmap us
Utilisez ensuite le programme keyb.com pour retrouver votre clavier dans DOSBox.
Il est aussi possible d'utiliser Xkeyb 1.5. site : http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/dos/xkeyb/xkeyb/
Une fois DOSBox fini, redefinissez votre clavier en français:
setxkbmap fr
Pour la touche « : », essayez la touche Shift et une touche autour de la touche ENTRÉE.
Vous pouvez être amené à rencontrer le problème suivant: Si une application utilise votre carte son, il n'y aura pas de son sur dosbox. Et inversement, si vous avez du son sur dosbox, mais que vous lancez un lecteur de musique, il ne fonctionnera pas.
Ceci est du à pulseaudio, encore relativement nouveau, et intégré à la "va-vite" dans Ubuntu, ce qui cause pas mal de bugs.
Il y a 2 solutions: installer le paquet libsdl1.2debian-pulseaudio dans synaptic, ou alors désinstaller le paquet pulseaudio purement et simplement (ce qui m'a résolu pas mal d'autres bugs au passage).
Problème rencontré sur Ubuntu 8.10. Les touches "fléchées" ne fonctionnent pas dans dosbox. Pour cela, vous devez ajouter une ligne dans votre fichier de configuration. Si vous avez suivi le tuto sur cette page, ce devrait être le fichier "dosbox.conf" dans votre répertoire personnel.
Ouvrez ce fichier, trouvez la ligne "usescancodes=true" et remplacez le "true" par "false". Enregistrez et (re)lancez dosbox. Le clavier sera passé en qwerty, mais au moins les touches fléchées fonctionneront.
Changer le CD en ouvrant le lecteur (si vous n'avez pas de boutons, CTRL–F9 puis éjecter) puis retourner dans le jeu et faites CTRL–F4 et voilà c'était plus simple que prévu.
Documentation de DosBox officiel [en] : http://www.dosbox.com/wiki/Main_Page